home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-07-26 | 77.7 KB | 1,519 lines |
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- NNNNAAAAMMMMEEEE
- gtroff - format documents
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ggggttttrrrrooooffffffff [ ----aaaabbbbiiiivvvvzzzzCCCCEEEERRRR ] [ ----wwww_n_a_m_e ] [ ----WWWW_n_a_m_e ] [ ----dddd_c_s ]
- [ ----ffff_f_a_m ] [ ----mmmm_n_a_m_e ] [ ----nnnn_n_u_m ] [ ----oooo_l_i_s_t ] [ ----rrrr_c_n ]
- [ ----TTTT_n_a_m_e ] [ ----FFFF_d_i_r ] [ ----MMMM_d_i_r ] [ _f_i_l_e_s... ]
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- This manual page describes the GNU version of ttttrrrrooooffffffff, which
- is part of the groff document formatting system. It is
- highly compatible with Unix troff. Usually it should be
- invoked using the groff command, which will also run
- preprocessors and postprocessors in the appropriate order
- and with the appropriate options.
-
- OOOOPPPPTTTTIIIIOOOONNNNSSSS
- ----aaaa Generate an ASCII approximation of the typeset
- output.
-
- ----bbbb Print a backtrace with each warning or error
- message. This backtrace should help track down
- the cause of the error. The line numbers given in
- the backtrace may not always correct: troff's idea
- of line numbers gets confused by aaaassss or aaaammmm
- requests.
-
- ----iiii Read the standard input after all the named input
- files have been processed.
-
- ----vvvv Print the version number.
-
- ----wwww_n_a_m_e Enable warning _n_a_m_e. Available warnings are
- described in the Warnings subsection below.
- Multiple ----wwww options are allowed.
-
- ----WWWW_n_a_m_e Inhibit warning _n_a_m_e. Multiple ----WWWW options are
- allowed.
-
- ----EEEE Inhibit all error messages.
-
- ----zzzz Suppress formatted output.
-
- ----CCCC Enable compatibility mode.
-
- ----dddd_c_s
- ----dddd_n_a_m_e====_s Define _c or _n_a_m_e to be a string _s; _c must be a one
- letter name.
-
- ----ffff_f_a_m Use _f_a_m as the default font family.
-
- ----mmmm_n_a_m_e Read in the file ttttmmmmaaaacccc...._n_a_m_e. Normally this will be
-
-
-
- Page 1 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- searched for in /usr/local/lib/groff/tmac.
-
- ----RRRR Don't load ttttrrrrooooffffffffrrrrcccc.
-
- ----nnnn_n_u_m Number the first page _n_u_m.
-
- ----oooo_l_i_s_t Output only pages in _l_i_s_t, which is a comma-
- separated list of page ranges; _n means print page
- _n, _m----_n means print every page between _m and _n, ----_n
- means print every page up to _n, _n---- means print
- every page from _n. TTTTrrrrooooffffffff will exit after printing
- the last page in the list.
-
- ----rrrr_c_n
- ----rrrr_n_a_m_e====_n Set number register _c or _n_a_m_e to _n; _c must be a
- one character name; _n can be any troff numeric
- expression.
-
- ----TTTT_n_a_m_e Prepare output for device _n_a_m_e, rather than the
- default ppppssss.
-
- ----FFFF_d_i_r Search _d_i_r for subdirectories ddddeeeevvvv_n_a_m_e (_n_a_m_e is the
- name of the device) for the DDDDEEEESSSSCCCC file and font
- files before the normal ////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ggggrrrrooooffffffff////ffffoooonnnntttt.
-
- ----MMMM_d_i_r Search directory _d_i_r for macro files before the
- normal ////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ggggrrrrooooffffffff////ttttmmmmaaaacccc.
-
- UUUUSSSSAAAAGGGGEEEE
- Only the features not in Unix troff are described here.
-
- LLLLoooonnnngggg nnnnaaaammmmeeeessss
- The names of number registers, fonts,
- strings/macros/diversions, special characters can be of any
- length. In escape sequences, where you can use ((((_x_x for a two
- character name, you can use [[[[_x_x_x]]]] for a name of arbitrary
- length:
-
- \\\\[[[[_x_x_x]]]]
- Print the special character called _x_x_x.
-
- \\\\ffff[[[[_x_x_x]]]]
- Set font _x_x_x.
-
- \\\\****[[[[_x_x_x]]]]
- Interpolate string _x_x_x.
-
- \\\\nnnn[[[[_x_x_x]]]]
- Interpolate number register _x_x_x.
-
- FFFFrrrraaaaccccttttiiiioooonnnnaaaallll ppppooooiiiinnnnttttssssiiiizzzzeeeessss
- A _s_c_a_l_e_d _p_o_i_n_t is equal to 1/sizescale points, where
-
-
-
- Page 2 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- sizescale is specified in the DDDDEEEESSSSCCCC file (1 by default.)
- There is a new scale indicator zzzz which has the effect of
- multiplying by sizescale. Requests and escape sequences in
- troff interpret arguments that represent a pointsize as
- being in units of scaled points, but they evaluate each such
- argument using a default scale indicator of zzzz. Arguments
- treated in this way are the argument to the ppppssss request, the
- third argument to the ccccssss request, the second and fourth
- arguments to the ttttkkkkffff request, the argument to the \\\\HHHH escape
- sequence, and those variants of the \\\\ssss escape sequence that
- take a numeric expression as their argument.
-
- For example, suppose sizescale is 1000; then a scaled point
- will be equivalent to a millipoint; the request ....ppppssss 11110000....22225555 is
- equivalent to ....ppppssss 11110000....22225555zzzz and so sets the pointsize to 10250
- scaled points, which is equal to 10.25 points.
-
- The number register \\\\nnnn((((....ssss returns the pointsize in points as
- decimal fraction. There is also a new number register
- \\\\nnnn[[[[....ppppssss]]]] that returns the pointsize in scaled points.
-
- It would make no sense to use the zzzz scale indicator in a
- numeric expression whose default scale indicator was neither
- uuuu nor zzzz, and so ttttrrrrooooffffffff disallows this. Similarly it would
- make no sense to use a scaling indicator other than zzzz or uuuu
- in a numeric expression whose default scale indicator was zzzz,
- and so ttttrrrrooooffffffff disallows this as well.
-
- There is also new scale indicator ssss which multiplies by the
- number of units in a scaled point. So, for example,
- \\\\nnnn[[[[....ppppssss]]]]ssss is equal to 1111mmmm. Be sure not to confuse the ssss and zzzz
- scale indicators.
-
- NNNNuuuummmmeeeerrrriiiicccc eeeexxxxpppprrrreeeessssssssiiiioooonnnnssss
- Spaces are permitted in a number expression within
- parentheses.
-
- MMMM indicates a scale of 100ths of an em.
-
- _e_1>>>>????_e_2
- The maximum of _e_1 and _e_2.
-
- _e_1<<<<????_e_2
- The minimum of _e_1 and _e_2.
-
- ((((_c;;;;_e))))
- Evaluate _e using _c as the default scaling indicator.
- If _c is missing, ignore scaling indicators in the
- evaluation of _e.
-
- NNNNeeeewwww eeeessssccccaaaappppeeee sssseeeeqqqquuuueeeennnncccceeeessss
- \\\\AAAA''''_a_n_y_t_h_i_n_g''''
-
-
-
- Page 3 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- This expands to 1111 or 0000 according as _a_n_y_t_h_i_n_g is or is
- not acceptable as the name of a string, macro,
- diversion, number register, environment or font. It
- will return 0000 if _a_n_y_t_h_i_n_g is empty. This is useful if
- you want to lookup user input in some sort of
- associative table.
-
- \\\\CCCC''''_x_x_x''''
- Typeset character named _x_x_x. Normally it is more
- convenient to use \\\\[[[[_x_x_x]]]]. But \\\\CCCC has the advantage
- that it is compatible with recent versions of UNIX and
- is available in compatibility mode.
-
- \\\\EEEE This is equivalent to an escape character, but it's not
- interpreted in copy-mode. For example, strings to
- start and end superscripting could be defined like
- this:
-
- .ds { \v'-.3m'\s'\En[.s]*6u/10u'
- .ds } \s0\v'.3m'
-
- The use of \\\\EEEE ensures that these definitions will work
- even if \\\\****{{{{ gets interpreted in copy-mode (for example,
- by being used in a macro argument.)
-
- \\\\NNNN''''_n''''
- Typeset the character with code _n in the current font.
- _n can be any integer. Most devices only have
- characters with codes between 0 and 255. If the
- current font does not contain a character with that
- code, special fonts will _n_o_t be searched. The \\\\NNNN
- escape sequence can be conveniently used on conjunction
- with the cccchhhhaaaarrrr request:
-
- ....cccchhhhaaaarrrr \\\\[[[[pppphhhhoooonnnneeee]]]] \\\\ffff((((ZZZZDDDD\\\\NNNN''''33337777''''
-
- The code of each character is given in the fourth
- column in the font description file after the cccchhhhaaaarrrrsssseeeetttt
- command. It is possible to include unnamed characters
- in the font description file by using a name of ------------;
- the \\\\NNNN escape sequence is the only way to use these.
-
- \\\\RRRR''''_n_a_m_e +__n''''
- This has the same effect as
-
- ....nnnnrrrr _n_a_m_e +__n
-
- \\\\ssss((((_n_n
- \\\\ssss++++____((((_n_n
- Set the point size to _n_n points; _n_n must be exactly two
- digits.
-
-
-
-
- Page 4 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- \\\\ssss[[[[++++_____n]]]]
- \\\\ssss++++____[[[[_n]]]]
- \\\\ssss''''++++_____n''''
- \\\\ssss++++____''''_n''''
- Set the point size to _n scaled points; _n is a numeric
- expression with a default scale indicator of zzzz.
-
- \\\\VVVV_x
- \\\\VVVV((((_x_x
- \\\\VVVV[[[[_x_x_x]]]]
- Interpolate the contents of the environment variable
- _x_x_x , as returned by ggggeeeetttteeeennnnvvvv(3). \\\\VVVV is interpreted in
- copy-mode.
-
- \\\\YYYY_x
- \\\\YYYY((((_x_x
- \\\\YYYY[[[[_x_x_x]]]]
- This is approximately equivalent to \\\\XXXX''''\\\\****[[[[_x_x_x]]]]''''.
- However the contents of the string or macro _x_x_x are not
- interpreted; also it is permitted for _x_x_x to have been
- defined as a macro and thus contain newlines (it is not
- permitted for the argument to \\\\XXXX to contain newlines).
- The inclusion of newlines requires an extension to the
- Unix troff output format, and will confuse drivers that
- do not know about this extension.
-
- \\\\ZZZZ''''_a_n_y_t_h_i_n_g''''
- Print anything and then restore the horizontal and
- vertical position; _a_n_y_t_h_i_n_g may not contain tabs or
- leaders.
-
- \\\\$$$$0000 The name by which the current macro was invoked. The
- aaaallllssss request can make a macro have more than one name.
-
- \\\\$$$$**** In a macro, the concatenation of all the arguments
- separated by spaces.
-
- \\\\$$$$@@@@ In a macro, the concatenation of all the arguments with
- each surrounded by double quotes, and separated by
- spaces.
-
- \\\\$$$$((((_n_n
- \\\\$$$$[[[[_n_n_n]]]]
- In a macro, this gives the _n_n-th or _n_n_n-th argument.
- Macros can have a unlimited number of arguments.
-
- \\\\????_a_n_y_t_h_i_n_g\\\\????
- When used in a diversion, this will transparently embed
- _a_n_y_t_h_i_n_g in the diversion. _a_n_y_t_h_i_n_g is read in copy
- mode. When the diversion is reread, _a_n_y_t_h_i_n_g will be
- interpreted. _a_n_y_t_h_i_n_g may not contain newlines; use \\\\!!!!
- if you want to embed newlines in a diversion. The
-
-
-
- Page 5 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- escape sequence \\\\???? is also recognised in copy mode and
- turned into a single internal code; it is this code
- that terminates _a_n_y_t_h_i_n_g. Thus
- ....nnnnrrrr xxxx 1111
- ....nnnnffff
- ....ddddiiii dddd
- \\\\????\\\\\\\\????\\\\\\\\\\\\\\\\????\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\nnnnxxxx\\\\\\\\\\\\\\\\????\\\\\\\\????\\\\????
- ....ddddiiii
- ....nnnnrrrr xxxx 2222
- ....ddddiiii eeee
- ....dddd
- ....ddddiiii
- ....nnnnrrrr xxxx 3333
- ....ddddiiii ffff
- ....eeee
- ....ddddiiii
- ....nnnnrrrr xxxx 4444
- ....ffff
-
- will print 4444.
-
- \\\\//// This increases the width of the preceding character so
- that the spacing between that character and the
- following character will be correct if the following
- character is a roman character. For example, if an
- italic f is immediately followed by a roman right
- parenthesis, then in many fonts the top right portion
- of the f will overlap the top left of the right
- parenthesis producing _f), which is ugly. Inserting \\\\////
- produces _f) and avoids this problem. It is a good idea
- to use this escape sequence whenever an italic
- character is immediately followed by a roman character
- without any intervening space.
-
- \\\\,,,, This modifies the spacing of the following character so
- that the spacing between that character and the
- preceding character will correct if the preceding
- character is a roman character. For example, inserting
- \\\\,,,, between the parenthesis and the f changes (_f to (_f.
- It is a good idea to use this escape sequence whenever
- a roman character is immediately followed by an italic
- character without any intervening space.
-
- \\\\)))) Like \\\\&&&& except that it behaves like a character
- declared with the ccccffffllllaaaaggggssss request to be transparent for
- the purposes of end of sentence recognition.
-
- \\\\~~~~ This produces an unbreakable space that stretches like
- a normal inter-word space when a line is adjusted.
-
- \\\\#### Everything up to and including the next newline is
- ignored. This is interpreted in copy mode. This is
-
-
-
- Page 6 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- like \\\\%%%% except that \\\\%%%% does not ignore the terminating
- newline.
-
- NNNNeeeewwww rrrreeeeqqqquuuueeeessssttttssss
- ....aaaallllnnnn _x_x _y_y
- Create an alias _x_x for number register object named _y_y.
- The new name and the old name will be exactly
- equivalent. If _y_y is undefined, a warning of type rrrreeeegggg
- will be generated, and the request will be ignored.
-
- ....aaaallllssss _x_x _y_y
- Create an alias _x_x for request, string, macro, or
- diversion object named _y_y. The new name and the old
- name will be exactly equivalent (it is similar to a
- hard rather than a soft link). If _y_y is undefined, a
- warning of type mmmmaaaacccc will be generated, and the request
- will be ignored. The ddddeeee, aaaammmm, ddddiiii, ddddaaaa, ddddssss, and aaaassss
- requests only create a new object if the name of the
- macro, diversion or string diversion is currently
- undefined or if it is defined to be a request; normally
- they modify the value of an existing object.
-
- ....aaaasssscccciiiiiiiiffffyyyy _x_x
- This request only exists in order to make it possible
- to make certain gross hacks work with GNU troff. It
- `unformats' the diversion _x_x in such a way that ASCII
- characters that were formatted and diverted into _x_x
- will be treated like ordinary input characters when _x_x
- is reread. For example, this
-
-
- ....ttttrrrr @@@@....
- ....ddddiiii xxxx
- @@@@nnnnrrrr\\\\ nnnn\\\\ 1111
- ....bbbbrrrr
- ....ddddiiii
- ....ttttrrrr @@@@@@@@
- ....aaaasssscccciiiiiiiiffffyyyy xxxx
- ....xxxx
-
- will set register nnnn to 1.
-
- ....bbbbaaaacccckkkkttttrrrraaaacccceeee
- Print a backtrace of the input stack on stderr.
-
- ....bbbbrrrreeeeaaaakkkk
- Break out of a while loop. See also the wwwwhhhhiiiilllleeee and
- ccccoooonnnnttttiiiinnnnuuuueeee requests. Be sure not to confuse this with
- the bbbbrrrr request.
-
- ....ccccffffllllaaaaggggssss _n _c_1 _c_2...
- Characters _c_1, _c_2,... have properties determined by _n,
-
-
-
- Page 7 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- which is ORed from the following:
-
- 1 the character ends sentences (initially characters
- ....????!!!! have this property);
-
- 2 lines can be broken before the character
- (initially no characters have this property); a
- line will not be broken at a character with this
- property unless the characters on each side both
- have non-zero hyphenation codes.
-
- 4 lines can be broken after the character (initially
- characters ----\\\\((((hhhhyyyy\\\\((((eeeemmmm have this property); a line
- will not be broken at a character with this
- property unless the characters on each side both
- have non-zero hyphenation codes.
-
- 8 the character overlaps horizontally (initially
- characters \\\\((((uuuullll\\\\((((rrrrnnnn\\\\((((rrrruuuu have this property);
-
- 16 the character overlaps vertically (initially
- character \\\\((((bbbbrrrr has this property);
-
- 32 an end of sentence character followed by any
- number of characters with this property will be
- treated as the end of a sentence if followed by a
- newline or two spaces; in other words the
- character is transparent for the purposes of end
- of sentence recognition; this is the same as
- having a zero space factor in TeX (initially
- characters """"''''))))]]]]****\\\\((((ddddgggg\\\\((((rrrrqqqq have this property).
-
- ....cccchhhhaaaarrrr _c _s_t_r_i_n_g
- Define character _c to be _s_t_r_i_n_g. Every time character
- _c needs to be printed, _s_t_r_i_n_g will be processed in a
- temporary environment and the result will be wrapped up
- into a single object. Compatibility mode will be
- turned off and the escape character will be set to \\\\
- while _s_t_r_i_n_g is being processed. Any emboldening,
- constant spacing or track kerning will be applied to
- this object rather than to individual characters in
- _s_t_r_i_n_g. A character defined by this request can be
- used just like a normal character provided by the
- output device. In particular other characters can be
- translated to it with the ttttrrrr request; it can be made
- the leader character by the llllcccc request; repeated
- patterns can be drawn with the character using the \\\\llll
- and \\\\LLLL escape sequences; words containing the character
- can be hyphenated correctly, if the hhhhccccooooddddeeee request is
- used to give the character a hyphenation code. There
- is a special anti-recursion feature: use of character
- within the character's definition will be handled like
-
-
-
- Page 8 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- normal characters not defined with cccchhhhaaaarrrr. A character
- definition can be removed with the rrrrcccchhhhaaaarrrr request.
-
- ....cccchhhhoooopppp _x_x
- Chop the last character off macro, string, or diversion
- _x_x. This is useful for removing the newline from the
- end of diversions that are to be interpolated as
- strings.
-
- ....cccclllloooosssseeee _s_t_r_e_a_m
- Close the stream named _s_t_r_e_a_m; _s_t_r_e_a_m will no longer be
- an acceptable argument to the wwwwrrrriiiitttteeee request. See the
- ooooppppeeeennnn request.
-
- ....ccccoooonnnnttttiiiinnnnuuuueeee
- Finish the current iteration of a while loop. See also
- the wwwwhhhhiiiilllleeee and bbbbrrrreeeeaaaakkkk requests.
-
- ....ccccpppp _n
- If _n is non-zero or missing, enable compatibility mode,
- otherwise disable it. In compatibility mode, long
- names are not recognised, and the incompatibilities
- caused by long names do not arise.
-
- ....ddddoooo _x_x_x
- Interpret ._x_x_x with compatibility mode disabled. For
- example,
-
- ....ddddoooo ffffaaaammmm TTTT
-
- would have the same effect as
-
- ....ffffaaaammmm TTTT
-
- except that it would work even if compatibility mode
- had been enabled. Note that the previous compatibility
- mode is restored before any files sourced by _x_x_x are
- interpreted.
-
- ....ffffaaaammmm _x_x
- Set the current font family to _x_x. The current font
- family is part of the current environment. See the
- description of the ssssttttyyyy request for more information on
- font families.
-
- ....ffffssssppppeeeecccciiiiaaaallll _f _s_1 _s_2...
- When the current font is _f, fonts _s_1, _s_2,... will be
- special, that is, they will searched for characters not
- in the current font. Any fonts specified in the
- ssssppppeeeecccciiiiaaaallll request will be searched after fonts specified
- in the ffffssssppppeeeecccciiiiaaaallll request.
-
-
-
-
- Page 9 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- ....ffffttttrrrr _f _g
- Translate font _f to _g. Whenever a font named _f is
- referred to in \\\\ffff escape sequence, or in the fffftttt, uuuullll,
- bbbbdddd, ccccssss, ttttkkkkffff, ssssppppeeeecccciiiiaaaallll, ffffssssppppeeeecccciiiiaaaallll, ffffpppp, or ssssttttyyyy requests,
- font _g will be used. If _g is missing, or equal to _f
- then font _f will not be translated.
-
- ....hhhhccccooooddddeeee _c_1 _c_o_d_e_1 _c_2 _c_o_d_e_2...
- Set the hyphenation code of character _c_1 to _c_o_d_e_1 and
- that of _c_2 to _c_o_d_e_2. A hyphenation code must be a
- single input character (not a special character) other
- than a digit or a space. Initially each lower-case
- letter has a hyphenation code, which is itself, and
- each upper-case letter has a hyphenation code which is
- the lower case version of itself. See also the hhhhppppffff
- request.
-
- ....hhhhllllaaaa _l_a_n_g
- Set the current hyphenation language to _l_a_n_g.
- Hyphenation exceptions specified with the hhhhwwww request
- and hyphenation patterns specified with the hhhhppppffff request
- are both associated with the current hyphenation
- language. The hhhhllllaaaa request is usually invoked by the
- ttttrrrrooooffffffffrrrrcccc file.
-
- ....hhhhllllmmmm _n
- Set the maximum number of consecutive hyphenated lines
- to _n. If _n is negative, there is no maximum. The
- default value is -1. This value is associated with the
- current environment. Only lines output from an
- environment count towards the maximum associated with
- that environment. Hyphens resulting from \\\\%%%% are
- counted; explicit hyphens are not.
-
- ....hhhhppppffff _f_i_l_e
- Read hyphenation patterns from _f_i_l_e; this will be
- searched for in the same way that ttttmmmmaaaacccc...._n_a_m_e is searched
- for when the ----mmmm_n_a_m_e option is specified. It should
- have the same format as the argument to the \patterns
- primitive in TeX; the letters appearing in this file
- are interpreted as hyphenation codes. A %%%% character in
- the patterns file introduces a comment that continues
- to the end of the line. The set of hyphenation
- patterns is associated with the current language set by
- the hhhhllllaaaa request. The hhhhppppffff request is usually invoked by
- the ttttrrrrooooffffffffrrrrcccc file.
-
- ....hhhhyyyymmmm _n
- Set the _h_y_p_h_e_n_a_t_i_o_n _m_a_r_g_i_n to _n: when the current
- adjustment mode is not bbbb, the line will not be
- hyphenated if the line is no more than _n short. The
- default hyphenation margin is 0. The default scaling
-
-
-
- Page 10 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- indicator for this request is _m. The hyphenation
- margin is associated with the current environment. The
- current hyphenation margin is available in the \\\\nnnn[[[[....hhhhyyyymmmm]]]]
- register.
-
- ....hhhhyyyyssss _n
- Set the _h_y_p_h_e_n_a_t_i_o_n _s_p_a_c_e to _n: when the current
- adjustment mode is bbbb don't hyphenate the line if the
- line can be justified by adding no more than _n extra
- space to each word space. The default hyphenation
- space is 0. The default scaling indicator for this
- request is mmmm. The hyphenation space is associated with
- the current environment. The current hyphenation space
- is available in the \\\\nnnn[[[[....hhhhyyyyssss]]]] register.
-
- ....kkkkeeeerrrrnnnn _n
- If _n is non-zero or missing, enable pairwise kerning,
- otherwise disable it.
-
- ....mmmmssssoooo _f_i_l_e
- The same as the ssssoooo request except that _f_i_l_e is searched
- for in the same way that ttttmmmmaaaacccc...._n_a_m_e is searched for when
- the ----mmmm_n_a_m_e option is specified.
-
- ....nnnnrrrrooooffffffff
- Make the nnnn built-in condition true and the tttt built-in
- condition false. This can be reversed using the ttttrrrrooooffffffff
- request.
-
- ....ooooppppeeeennnn _s_t_r_e_a_m _f_i_l_e_n_a_m_e
- Open _f_i_l_e_n_a_m_e for writing and associate the stream
- named _s_t_r_e_a_m with it. See also the cccclllloooosssseeee and wwwwrrrriiiitttteeee
- requests.
-
- ....ooooppppeeeennnnaaaa _s_t_r_e_a_m _f_i_l_e_n_a_m_e
- Like ooooppppeeeennnn, but if _f_i_l_e_n_a_m_e exists, append to it instead
- of truncating it.
-
- ....ppppnnnnrrrr Print the names and contents of all currently defined
- number registers on stderr.
-
- ....ppppssssoooo _c_o_m_m_a_n_d
- This is behaves like the ssssoooo request except that input
- comes from the standard output of _c_o_m_m_a_n_d.
-
- ....ppppttttrrrr Print the names and positions of all traps (not
- including input line traps and diversion traps) on
- stderr. Empty slots in the page trap list are printed
- as well, because they can affect the priority of
- subsequently planted traps.
-
- ....rrrrcccchhhhaaaarrrr _c_1 _c_2...
-
-
-
- Page 11 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- Remove the definitions of characters _c_1, _c_2,... This
- undoes the effect of a cccchhhhaaaarrrr request.
-
- ....rrrrjjjj
- ....rrrrjjjj _n
- Right justify the next _n input lines. Without an
- argument right justify the next input line. The number
- of lines to be right justified is available in the
- \\\\nnnn[[[[....rrrrjjjj]]]] register. This implicitly does ....cccceeee 0000. The cccceeee
- request implicitly does ....rrrrjjjj 0000.
-
- ....rrrrnnnnnnnn _x_x _y_y
- Rename number register _x_x to _y_y.
-
- ....sssshhhhcccc _c
- Set the soft hyphen character to _c. If _c is omitted,
- the soft hyphen character will be set to the default
- \\\\((((hhhhyyyy. The soft hyphen character is the character which
- will be inserted when a word is hyphenated at a line
- break. If the soft hyphen character does not exist in
- the font of the character immediately preceding a
- potential break point, then the line will not be broken
- at that point. Neither definitions (specified with the
- cccchhhhaaaarrrr request) nor translations (specified with the ttttrrrr
- request) are considered when finding the soft hyphen
- character.
-
- ....sssshhhhiiiifffftttt _n
- In a macro, shift the arguments by _n positions:
- argument _i becomes argument _i-_n; arguments 1 to _n will
- no longer be available. If _n is missing, arguments
- will be shifted by 1. Shifting by negative amounts is
- currently undefined.
-
- ....ssssppppeeeecccciiiiaaaallll _s_1 _s_2...
- Fonts _s_1, _s_2, are special and will be searched for
- characters not in the current font.
-
- ....ssssttttyyyy _n _f
- Associate style _f with font position _n. A font
- position can be associated either with a font or with a
- style. The current font is the index of a font
- position and so is also either a font or a style. When
- it is a style, the font that is actually used is the
- font the name of which is the concatenation of the name
- of the current family and the name of the current
- style. For example, if the current font is 1 and font
- position 1 is associated with style RRRR and the current
- font family is TTTT, then font TTTTRRRR will be used. If the
- current font is not a style, then the current family is
- ignored. When the requests ccccssss, bbbbdddd, ttttkkkkffff, uuuuffff, or
- ffffssssppppeeeecccciiiiaaaallll are applied to a style, then they will instead
-
-
-
- Page 12 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- be applied to the member of the current family
- corresponding to that style. The default family can be
- set with the ----ffff option. The styles command in the DESC
- file controls which font positions (if any) are
- initially associated with styles rather than fonts.
-
- ....ttttkkkkffff _f _s_1 _n_1 _s_2 _n_2
- Enable track kerning for font _f. When the current font
- is _f the width of every character will be increased by
- an amount between _n_1 and _n_2; when the current point
- size is less than or equal to _s_1 the width will be
- increased by _n_1; when it is greater than or equal to _s_2
- the width will be increased by _n_2; when the point size
- is greater than or equal to _s_1 and less than or equal
- to _s_2 the increase in width is a linear function of the
- point size.
-
- ....ttttrrrrffff _f_i_l_e_n_a_m_e
- Transparently output the contents of file _f_i_l_e_n_a_m_e.
- Each line is output as it would be were it preceded by
- \\\\!!!!; however, the lines are not subject to copy-mode
- interpretation. If the file does not end with a
- newline, then a newline will be added. For example,
- you can define a macro _x containing the contents of
- file _f, using
-
- ....ddddiiii _x
- ....ttttrrrrffff _f
- ....ddddiiii
-
- Unlike with the ccccffff request, the file cannot contain
- characters such as NUL that are not legal troff input
- characters.
-
- ....ttttrrrrnnnntttt aaaabbbbccccdddd
- This is the same as the ttttrrrr request except that the
- translations do not apply to text that is transparently
- throughput into a diversion with \\\\!!!!. For example,
-
- ....ttttrrrr aaaabbbb
- ....ddddiiii xxxx
- \\\\!!!!....ttttmmmm aaaa
- ....ddddiiii
- ....xxxx
-
- will print bbbb; if ttttrrrrnnnntttt is used instead of ttttrrrr it will
- print aaaa.
-
- ....ttttrrrrooooffffffff
- Make the nnnn built-in condition false, and the tttt built-in
- condition true. This undoes the effect of the nnnnrrrrooooffffffff
- request.
-
-
-
- Page 13 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- ....vvvvpppptttt _n
- Enable vertical position traps if _n is non-zero,
- disable them otherwise. Vertical position traps are
- traps set by the wwwwhhhh or ddddtttt requests. Traps set by the
- iiiitttt request are not vertical position traps. The
- parameter that controls whether vertical position traps
- are enabled is global. Initially vertical position
- traps are enabled.
-
- ....wwwwaaaarrrrnnnn _n
- Control warnings. _n is the sum of the numbers
- associated with each warning that is to be enabled; all
- other warnings will be disabled. The number associated
- with each warning is listed in the `Warnings' section.
- For example, ....wwwwaaaarrrrnnnn 0000 will disable all warnings, and
- ....wwwwaaaarrrrnnnn 1111 will disable all warnings except that about
- missing characters. If _n is not given, all warnings
- will be enabled.
-
- ....wwwwhhhhiiiilllleeee _c _a_n_y_t_h_i_n_g
- While condition _c is true, accept _a_n_y_t_h_i_n_g as input; _c
- can be any condition acceptable to an iiiiffff request;
- _a_n_y_t_h_i_n_g can comprise multiple lines if the first line
- starts with \\\\{{{{ and the last line ends with \\\\}}}}. See
- also the bbbbrrrreeeeaaaakkkk and ccccoooonnnnttttiiiinnnnuuuueeee requests.
-
- ....wwwwrrrriiiitttteeee _s_t_r_e_a_m _a_n_y_t_h_i_n_g
- Write _a_n_y_t_h_i_n_g to the stream named _s_t_r_e_a_m. _s_t_r_e_a_m must
- previously have been the subject of an ooooppppeeeennnn request.
- _a_n_y_t_h_i_n_g is read in copy mode; a leading """" will be
- stripped.
-
- EEEExxxxtttteeeennnnddddeeeedddd rrrreeeeqqqquuuueeeessssttttssss
- ....ccccffff _f_i_l_e_n_a_m_e
- When used in a diversion, this will embed in the
- diversion an object which, when reread, will cause the
- contents of _f_i_l_e_n_a_m_e to be transparently copied through
- to the output. In Unix troff, the contents of _f_i_l_e_n_a_m_e
- is immediately copied through to the output regardless
- of whether there is a current diversion; this behaviour
- is so anomalous that it must be considered a bug.
-
- ....eeeevvvv _x_x
- If _x_x is not a number, this will switch to a named
- environment called _x_x. The environment should be
- popped with a matching eeeevvvv request without any
- arguments, just as for numbered environments. There is
- no limit on the number of named environments; they will
- be created the first time that they are referenced.
-
- ....ffffpppp _n _f_1 _f_2
- The ffffpppp request has an optional third argument. This
-
-
-
- Page 14 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- argument gives the external name of the font, which is
- used for finding the font description file. The second
- argument gives the internal name of the font which is
- used to refer to the font in troff after it has been
- mounted. If there is no third argument then the
- internal name will be used as the external name. This
- feature allows you to use fonts with long names in
- compatibility mode.
-
- ....ssssssss _m _n
- When two arguments are given to the ssssssss request, the
- second argument gives the _s_e_n_t_e_n_c_e _s_p_a_c_e _s_i_z_e. If the
- second argument is not given, the sentence space size
- will be the same as the word space size. Like the word
- space size, the sentence space is in units of one
- twelfth of the spacewidth parameter for the current
- font. Initially both the word space size and the
- sentence space size are 12. The sentence space size is
- used in two circumstances: if the end of a sentence
- occurs at the end of a line in fill mode, then both an
- inter-word space and a sentence space will be added; if
- two spaces follow the end of a sentence in the middle
- of a line, then the second space will be a sentence
- space. Note that the behaviour of Unix troff will be
- exactly that exhibited by GNU troff if a second
- argument is never given to the ssssssss request. In GNU
- troff, as in Unix troff, you should always follow a
- sentence with either a newline or two spaces.
-
- ....ttttaaaa _n_1 _n_2..._n_n TTTT _r_1 _r_2..._r_n
- Set tabs at positions _n_1, _n_2,..., _n_n and then set tabs
- at _n_n+_r_1, _n_n+_r_2,...., _n_n+_r_n and then at _n_n+_r_n+_r_1,
- _n_n+_r_n+_r_2,..., _n_n+_r_n+_r_n, and so on. For example,
-
- ....ttttaaaa TTTT ....5555iiii
-
- will set tabs every half an inch.
-
- NNNNeeeewwww nnnnuuuummmmbbbbeeeerrrr rrrreeeeggggiiiisssstttteeeerrrrssss
- The following read-only registers are available:
-
- \\\\nnnn[[[[....CCCC]]]]
- 1 if compatibility mode is in effect, 0 otherwise.
-
- \\\\nnnn[[[[....ccccddddpppp]]]]
- The depth of the last character added to the current
- environment. It is positive if the character extends
- below the baseline.
-
- \\\\nnnn[[[[....cccceeee]]]]
- The number of lines remaining to be centered, as set by
- the cccceeee request.
-
-
-
- Page 15 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- \\\\nnnn[[[[....cccchhhhtttt]]]]
- The height of the last character added to the current
- environment. It is positive if the character extends
- above the baseline.
-
- \\\\nnnn[[[[....ccccsssskkkk]]]]
- The skew of the last character added to the current
- environment. The _s_k_e_w of a character is how far to the
- right of the center of a character the center of an
- accent over that character should be placed.
-
- \\\\nnnn[[[[....eeeevvvv]]]]
- The name or number of the current environment. This is
- a string-valued register.
-
- \\\\nnnn[[[[....ffffaaaammmm]]]]
- The current font family. This is a string-valued
- register.
-
- \\\\nnnn[[[[....ffffpppp]]]]
- The number of the next free font position.
-
- \\\\nnnn[[[[....gggg]]]]
- Always 1. Macros should use this to determine whether
- they are running under GNU troff.
-
- \\\\nnnn[[[[....hhhhllllaaaa]]]]
- The current hyphenation language as set by the hhhhllllaaaa
- request.
-
- \\\\nnnn[[[[....hhhhllllcccc]]]]
- The number of immediately preceding consecutive
- hyphenated lines.
-
- \\\\nnnn[[[[....hhhhllllmmmm]]]]
- The maximum allowed number of consecutive hyphenated
- lines, as set by the hhhhllllmmmm request.
-
- \\\\nnnn[[[[....hhhhyyyy]]]]
- The current hyphenation flags (as set by the hhhhyyyy
- request.)
-
- \\\\nnnn[[[[....hhhhyyyymmmm]]]]
- The current hyphenation margin (as set by the hhhhyyyymmmm
- request.)
-
- \\\\nnnn[[[[....hhhhyyyyssss]]]]
- The current hyphenation space (as set by the hhhhyyyyssss
- request.)
-
- \\\\nnnn[[[[....iiiinnnn]]]]
- The indent that applies to the current output line.
-
-
-
- Page 16 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- \\\\nnnn[[[[....kkkkeeeerrrrnnnn]]]]
- 1111 if pairwise kerning is enabled, 0000 otherwise.
-
- \\\\nnnn[[[[....llllgggg]]]]
- The current ligature mode (as set by the llllgggg request.)
-
- \\\\nnnn[[[[....llllllll]]]]
- The line length that applies to the current output
- line.
-
- \\\\nnnn[[[[....lllltttt]]]]
- The title length as set by the lllltttt request.
-
- \\\\nnnn[[[[....nnnneeee]]]]
- The amount of space that was needed in the last nnnneeee
- request that caused a trap to be sprung. Useful in
- conjunction with the \\\\nnnn[[[[....ttttrrrruuuunnnncccc]]]] register.
-
- \\\\nnnn[[[[....ppppnnnn]]]]
- The number of the next page: either the value set by a
- ppppnnnn request, or the number of the current page plus 1.
-
- \\\\nnnn[[[[....ppppssss]]]]
- The current pointsize in scaled points.
-
- \\\\nnnn[[[[....ppppssssrrrr]]]]
- The last-requested pointsize in scaled points.
-
- \\\\nnnn[[[[....rrrrjjjj]]]]
- The number of lines to be right-justified as set by the
- rrrrjjjj request.
-
- \\\\nnnn[[[[....ssssrrrr]]]]
- The last requested pointsize in points as a decimal
- fraction. This is a string-valued register.
-
- \\\\nnnn[[[[....ttttaaaabbbbssss]]]]
- A string representation of the current tab settings
- suitable for use as an argument to the ttttaaaa request.
-
- \\\\nnnn[[[[....ttttrrrruuuunnnncccc]]]]
- The amount of vertical space truncated by the most
- recently sprung vertical position trap, or, if the trap
- was sprung by a nnnneeee request, minus the amount of
- vertical motion produced by the nnnneeee request. In other
- words, at the point a trap is sprung, it represents the
- difference of what the vertical position would have
- been but for the trap, and what the vertical position
- actually is. Useful in conjunction with the \\\\nnnn[[[[....nnnneeee]]]]
- register.
-
- \\\\nnnn[[[[....ssssssss]]]]
-
-
-
- Page 17 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- \\\\nnnn[[[[....ssssssssssss]]]]
- These give the values of the parameters set by the
- first and second arguments of the ssssssss request.
-
- \\\\nnnn[[[[....vvvvpppptttt]]]]
- 1 if vertical position traps are enabled, 0 otherwise.
-
- \\\\nnnn[[[[....wwwwaaaarrrrnnnn]]]]
- The sum of the numbers associated with each of the
- currently enabled warnings. The number associated with
- each warning is listed in the `Warnings' subsection.
-
- \\\\nnnn((((....xxxx
- The major version number. For example, if the version
- number is 1111....00003333 then \\\\nnnn((((....xxxx will contain 1111.
-
- \\\\nnnn((((....yyyy
- The minor version number. For example, if the version
- number is 1111....00003333 then \\\\nnnn((((....yyyy will contain 00003333.
-
- The following registers are set by the \\\\wwww escape sequence:
-
- \\\\nnnn[[[[rrrrsssstttt]]]]
- \\\\nnnn[[[[rrrrssssbbbb]]]]
- Like the sssstttt and ssssbbbb registers, but takes account of the
- heights and depths of characters.
-
- \\\\nnnn[[[[sssssssscccc]]]]
- The amount of horizontal space (possibly negative) that
- should be added to the last character before a
- subscript.
-
- \\\\nnnn[[[[sssskkkkwwww]]]]
- How far to right of the center of the last character in
- the \\\\wwww argument, the center of an accent from a roman
- font should be placed over that character.
-
- The following read/write number registers are available:
-
- \\\\nnnn[[[[ssssyyyyssssttttaaaatttt]]]]
- The return value of the system() function executed by
- the last ssssyyyy request.
-
- \\\\nnnn[[[[sssslllliiiimmmmiiiitttt]]]]
- If greater than 0, the maximum number of objects on the
- input stack. If less than or equal to 0, there is no
- limit on the number of objects on the input stack.
- With no limit, recursion can continue until virtual
- memory is exhausted.
-
- MMMMiiiisssscccceeeellllllllaaaannnneeeeoooouuuussss
- Fonts not listed in the DESC file are automatically mounted
-
-
-
- Page 18 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- on the next available font position when they are
- referenced. If a font is to be mounted explicitly with the
- ffffpppp request on an unused font position, it should be mounted
- on the first unused font position, which can be found in the
- \\\\nnnn[[[[....ffffpppp]]]] register; although ttttrrrrooooffffffff does not enforce this
- strictly, it will not allow a font to be mounted at a
- position whose number is much greater than that of any
- currently used position.
-
- Interpolating a string does not hide existing macro
- arguments. Thus in a macro, a more efficient way of doing
-
- ...._x_x \\\\\\\\$$$$@@@@
-
- is
-
- \\\\\\\\****[[[[_x_x]]]]\\\\\\\\
-
- If the font description file contains pairwise kerning
- information, characters from that font will be kerned.
- Kerning between two characters can be inhibited by placing a
- \\\\&&&& between them.
-
- In a string comparison in a condition, characters that
- appear at different input levels to the first delimiter
- character will not be recognised as the second or third
- delimiters. This applies also to the ttttllll request. In a \\\\wwww
- escape sequence, a character that appears at a different
- input level to the starting delimiter character will not be
- recognised as the closing delimiter character. When
- decoding a macro argument that is delimited by double
- quotes, a character that appears at a different input level
- to the starting delimiter character will not be recognised
- as the closing delimiter character. The implementation of
- \\\\$$$$@@@@ ensures that the double quotes surrounding an argument
- will appear the same input level, which will be different to
- the input level of the argument itself. In a long escape
- name ]]]] will not be recognized as a closing delimiter except
- when it occurs at the same input level as the opening ]]]]. In
- compatibility mode, no attention is paid to the input-level.
-
- There are some new types of condition:
-
- ....iiiiffff rrrr_x_x_x
- True if there is a number register named _x_x_x.
-
- ....iiiiffff dddd_x_x_x
- True if there is a string, macro, diversion, or request
- named _x_x_x.
-
- ....iiiiffff cccc_c_h
- True if there is a character _c_h available; _c_h is either
-
-
-
- Page 19 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- an ASCII character or a special character \\\\((((_x_x or
- \\\\[[[[_x_x_x]]]]; the condition will also be true if _c_h has been
- defined by the cccchhhhaaaarrrr request.
-
- WWWWaaaarrrrnnnniiiinnnnggggssss
- The warnings that can be given by ttttrrrrooooffffffff are divided into the
- following categories. The name associated with each warning
- is used by the ----wwww and ----WWWW options; the number is used by the
- wwwwaaaarrrrnnnn request, and by the ....wwwwaaaarrrrnnnn register.
-
- cccchhhhaaaarrrr 1 Non-existent characters. This is enabled
- by default.
-
- nnnnuuuummmmbbbbeeeerrrr 2 Invalid numeric expressions. This is
- enabled by default.
-
- bbbbrrrreeeeaaaakkkk 4 In fill mode, lines which could not be
- broken so that their length was less than
- the line length. This is enabled by
- default.
-
- ddddeeeelllliiiimmmm 8 Missing or mismatched closing delimiters.
-
- eeeellll 16 Use of the eeeellll request with no matching iiiieeee
- request.
-
- ssssccccaaaalllleeee 32 Meaningless scaling indicators.
-
- rrrraaaannnnggggeeee 64 Out of range arguments.
-
- ssssyyyynnnnttttaaaaxxxx 128 Dubious syntax in numeric expressions.
-
- ddddiiii 256 Use of ddddiiii or ddddaaaa without an argument when
- there is no current diversion.
-
- mmmmaaaacccc 512 Use of undefined strings, macros and
- diversions. When an undefined string,
- macro or diversion is used, that string
- is automatically defined as empty. So,
- in most cases, at most one warning will
- be given for each name.
-
- rrrreeeegggg 1024 Use of undefined number registers. When
- an undefined number register is used,
- that register is automatically defined to
- have a value of 0. a definition is
- automatically made with a value of 0.
- So, in most cases, at most one warning
- will be given for use of a particular
- name.
-
- ttttaaaabbbb 2048 Inappropriate use of a tab character.
-
-
-
- Page 20 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- Either use of a tab character where a
- number was expected, or use of tab
- character in an unquoted macro argument.
-
- rrrriiiigggghhhhtttt----bbbbrrrraaaacccceeee 4096 Use of \\\\}}}} where a number was expected.
-
- mmmmiiiissssssssiiiinnnngggg 8192 Requests that are missing non-optional
- arguments.
-
- iiiinnnnppppuuuutttt 16384 Illegal input characters.
-
- eeeessssccccaaaappppeeee 32768 Unrecognized escape sequences. When an
- unrecognized escape sequence is
- encountered, the escape character is
- ignored.
-
- ssssppppaaaacccceeee 65536 Missing space between a request or macro
- and its argument. This warning will be
- given when an undefined name longer than
- two characters is encountered, and the
- first two characters of the name make a
- defined name. The request or macro will
- not be invoked. When this warning is
- given, no macro is automatically defined.
- This is enabled by default. This warning
- will never occur in compatibility mode.
-
- ffffoooonnnntttt 131072 Non-existent fonts. This is enabled by
- default.
-
- iiiigggg 262144 Illegal escapes in text ignored with the
- iiiigggg request. These are conditions that
- are errors when they do not occur in
- ignored text.
-
- There are also names that can be used to refer to groups of
- warnings:
-
- aaaallllllll All warnings except ddddiiii, mmmmaaaacccc and rrrreeeegggg. It is intended
- that this covers all warnings that are useful with
- traditional macro packages.
-
- wwww All warnings.
-
- IIIInnnnccccoooommmmppppaaaattttiiiibbbbiiiilllliiiittttiiiieeeessss
- Long names cause some incompatibilities. Unix troff will
- interpret
-
- ....ddddssssaaaabbbbccccdddd
-
- as defining a string aaaabbbb with contents ccccdddd. Normally, GNU
- troff will interpret this as a call of a macro named ddddssssaaaabbbbccccdddd.
-
-
-
- Page 21 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- Also Unix troff will interpret \\\\****[[[[ or \\\\nnnn[[[[ as references to a
- string or number register called [[[[. In GNU troff, however,
- this will normally be interpreted as the start of a long
- name. In _c_o_m_p_a_t_i_b_i_l_i_t_y _m_o_d_e GNU troff will interpret these
- things in the traditional way. In compatibility mode,
- however, long names are not recognised. Compatibility mode
- can be turned on with the ----CCCC command line option, and turned
- on or off with the ccccpppp request. The number register \\\\nnnn((((....CCCC is
- 1 if compatibility mode is on, 0 otherwise.
-
- GNU troff does not allow the use of the escape sequences
- \\\\\\\\||||\\\\^^^^\\\\&&&&\\\\}}}}\\\\{{{{\\\\(space)\\\\''''\\\\````\\\\----\\\\____\\\\!!!!\\\\%%%%\\\\cccc in names of strings,
- macros, diversions, number registers, fonts or environments;
- Unix troff does. The \\\\AAAA escape sequence may be helpful in
- avoiding use of these escape sequences in names.
-
- Fractional pointsizes cause one noteworthy incompatibility.
- In Unix troff the ppppssss request ignores scale indicators and so
-
- ....ppppssss 11110000uuuu
-
- will set the pointsize to 10 points, whereas in GNU troff it
- will set the pointsize to 10 scaled points.
-
- In GNU troff there is a fundamental difference between
- unformatted, input characters, and formatted, output
- characters. Everything that affects how an output character
- will be output is stored with the character; once an output
- character has been constructed it is unaffected by any
- subsequent requests that are executed, including bbbbdddd, ccccssss,
- ttttkkkkffff, ttttrrrr, or ffffpppp requests. Normally output characters are
- constructed from input characters at the moment immediately
- before the character is added to the current output line.
- Macros, diversions and strings are all, in fact, the same
- type of object; they contain lists of input characters and
- output characters in any combination. An output character
- does not behave like an input character for the purposes of
- macro processing; it does not inherit any of the special
- properties that the input character from which it was
- constructed might have had. For example,
-
-
- ....ddddiiii xxxx
- \\\\\\\\\\\\\\\\
- ....bbbbrrrr
- ....ddddiiii
- ....xxxx
-
- will print \\\\\\\\ in GNU troff; each pair of input \\\\s is turned
- into one output \\\\ and the resulting output \\\\s are not
- interpreted as escape characters when they are reread. Unix
- troff would interpret them as escape characters when they
-
-
-
- Page 22 (printed 3/9/94)
-
-
-
-
-
-
- GGGGTTTTRRRROOOOFFFFFFFF((((1111)))) GGGGrrrrooooffffffff VVVVeeeerrrrssssiiiioooonnnn 1111....00009999 ((((22224444 FFFFeeeebbbbrrrruuuuaaaarrrryyyy 1111999999994444)))) GGGGTTTTRRRROOOOFFFFFFFF((((1111))))
-
-
-
- were reread and would end up printing one \\\\. The correct
- way to obtain a printable \\\\ is to use the \\\\eeee escape
- sequence: this will always print a single instance of the
- current escape character, regardless of whether or not it is
- used in a diversion; it will also work in both GNU troff and
- Unix troff. If you wish for some reason to store in a
- diversion an escape sequence that will be interpreted when
- the diversion is reread, you can either use the traditional
- \\\\!!!! transparent output facility, or, if this is unsuitable,
- the new \\\\???? escape sequence.
-
- EEEENNNNVVVVIIIIRRRROOOONNNNMMMMEEEENNNNTTTT
- GGGGRRRROOOOFFFFFFFF____TTTTMMMMAAAACCCC____PPPPAAAATTTTHHHH
- A colon separated list of directories in which to
- search for macro files.
-
- GGGGRRRROOOOFFFFFFFF____TTTTYYYYPPPPEEEESSSSEEEETTTTTTTTEEEERRRR
- Default device.
-
- GGGGRRRROOOOFFFFFFFF____FFFFOOOONNNNTTTT____PPPPAAAATTTTHHHH
- A colon separated list of directories in which to
- search for the ddddeeeevvvv_n_a_m_e directory. ttttrrrrooooffffffff will search in
- directories given in the ----FFFF option before these, and in
- standard directories
- (....::::////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ggggrrrrooooffffffff////ffffoooonnnntttt::::////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ffffoooonnnntttt::::////uuuussssrrrr////lllliiiibbbb////ffffoooonnnntttt)
- after these.
-
- FFFFIIIILLLLEEEESSSS
- ////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ggggrrrrooooffffffff////ttttmmmmaaaacccc////ttttrrrrooooffffffffrrrrcccc
- Initialization file
-
- ////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ggggrrrrooooffffffff////ttttmmmmaaaacccc////ttttmmmmaaaacccc...._n_a_m_e
- Macro files
-
- ////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ggggrrrrooooffffffff////ffffoooonnnntttt////ddddeeeevvvv_n_a_m_e////DDDDEEEESSSSCCCC
- Device description file for device _n_a_m_e.
-
- ////uuuussssrrrr////llllooooccccaaaallll////lllliiiibbbb////ggggrrrrooooffffffff////ffffoooonnnntttt////ddddeeeevvvv_n_a_m_e////_F
- Font file for font _F of device _n_a_m_e.
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- ggggrrrrooooffffffff(1) ggggttttbbbbllll(1), ggggppppiiiicccc(1), ggggeeeeqqqqnnnn(1), ggggrrrrooooppppssss(1), ggggrrrrooooddddvvvviiii(1),
- ggggrrrroooottttttttyyyy(1), ggggrrrrooooffffffff____ffffoooonnnntttt(5), ggggrrrrooooffffffff____oooouuuutttt(5), ggggrrrrooooffffffff____cccchhhhaaaarrrr(7)
-
-
-
-
-
-
-
-
-
-
-
-
- Page 23 (printed 3/9/94)
-
-
-
-